From b16ca0e441f3f1dadd9e6b610f670099e74e50d5 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Sun, 1 Mar 2009 14:58:07 +0000 Subject: [PATCH] x86, hvm: gcc44 build fix. Broken constrain in inline asm. Bytewise access works with a, b, c, d registers only, thus "r" is wrong, it must be "q". gcc 4.4 tries to use the si register, which doesn't work and thus fails the build. From: Gerd Hoffmann Signed-off-by: Keir Fraser --- xen/arch/x86/hvm/vpic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/x86/hvm/vpic.c b/xen/arch/x86/hvm/vpic.c index 30486ce935..cf43f1e544 100644 --- a/xen/arch/x86/hvm/vpic.c +++ b/xen/arch/x86/hvm/vpic.c @@ -56,7 +56,7 @@ static int vpic_get_priority(struct hvm_hw_vpic *vpic, uint8_t mask) /* prio = ffs(mask ROR vpic->priority_add); */ asm ( "ror %%cl,%b1 ; bsf %1,%0" - : "=r" (prio) : "r" ((uint32_t)mask), "c" (vpic->priority_add) ); + : "=r" (prio) : "q" ((uint32_t)mask), "c" (vpic->priority_add) ); return prio; } -- 2.30.2